【JavaScript】型 - 変数と値の性質(数値型/文字列型/論理型/Null/Undefined)
JavaScriptの変数や値には『型』と呼ぶ性質があります。
型はプログラムの処理をコントロールするために必要な知識です。
ここでは、型について解説します。
検証環境
型
型は“変数や値の性質の定義”です。
『種類』のイメージで、例えば1234
という値があるとき、この値が数値なのか文字列なのかを判別する要素が型になります。
種類
代表的な型は次の5つです。
型 | 概要 | JS名称 | 例 |
---|---|---|---|
数値型 | 整数や浮動小数点数などの値 | number | 8 / 3.14 |
文字列型 | 単一文字を複数繋げた値 | string | "Hello World" |
論理型 | 論理状態を表す値 | boolean | true / false |
Null | 空の値 | object | null |
Undefined | 未定義 | undefined | undefined |
ここでは、初めに覚えておきたい数値型、文字列型、論理型について解説していきます。
型の確認
変数や値の型を確認するには、typeof関数を使います。
関数が未学習の方は、ここでは書き方を覚えていただければ問題ありません。
typeof(変数または値)
typeof関数は丸括弧(()
)内に記述した変数や値の型を文字列で取得します。
例えば、数値1234
の型の確認は次のようになります。
___ih_hl_start
console.log(typeof(1234));
___ih_hl_end
number
typeof
関数で取得した文字列をconsole.log
によってコンソールに出力しています。
実行すると数値型を意味するnumber
が出力されます。
数値型
数値型は“整数や浮動小数点数などの値を表す型”です。
JavaScriptでの名称はnumberで、数値を記憶する変数は自動で数値型になります。
let data = 1234;
___ih_hl_start
console.log("1234 : " + typeof(1234));
console.log("data : " + typeof(data));
___ih_hl_end
1234 : number
data : number
文字列型
文字列型は“文字を羅列した値を表す型”です。
JavaScriptでの名称はstringで、文字列を記憶する変数はは自動で文字列型になります。
let data = "Hello World";
___ih_hl_start
console.log("Hello World : " + typeof("Hello World"));
console.log("data : " + typeof(data));
___ih_hl_end
Hello World : string
data : string
論理型
論理型は“論理値(真偽)を表す型”です。
JavaScriptでの名称はbooleanで、論理値(true/false)を記憶する変数は自動で論理値型になります。
let data = true;
___ih_hl_start
console.log("true : " + typeof(true));
console.log("data : " + typeof(data));
___ih_hl_end
true : boolean
data : boolean
変数と値の型
『変数の型』と『値の型』は意味が異なります。
変数の型は“変数に記憶できる値の型”を表し、値の型は“値そのものの型”を表します。
プログラミングには“変数は自身と同じ型の値のみ記憶できる”という基本的な考え方があります。
そのため、変数に異なる型の値を代入する場合は値の型を合わせる必要があります。
例えば、文字列型の変数に、数値型の1234
を代入する場合、1234
を文字列型に変換します。
ただし、JavaScriptは変数と値に応じて、自動で型変換が行われるため、型変換について意識せずプログラミングすることが可能です。
そのため、基本的には変数は自身の型以外の値を記憶することはできないため、違う型を代入する場合は変数の型を変換する必要があります。
この辺りの特性は動的型付け/静的型付けと呼ばれるもので、興味がある方は調べてみましょう。